package goroutine

import "time"

// 空闲工作协程管理器
type idleMng interface {
	Len() int
	IsEmpty() bool
	IsFull() bool
	GetWorker() *worker
	PutWorker(*worker)
	Expire(time.Duration) []*worker
	Clear() []*worker
}

// 创建空闲工作协程管理器
func newIdleMng(size int) idleMng {
	if size > 0 {
		return newIdleMngQueue(size)
	} else {
		return newIdleMngStack()
	}
}
